<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- 引入主题样式 -->
<link href="${pageContext.request.contextPath}/themes/bootstrap/easyui.css" rel="stylesheet">
<!-- 引入图表样式 -->
<link href="${pageContext.request.contextPath}/themes/icon.css" rel="stylesheet">
<!-- 引入jquery -->
<script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-1.9.1.js"></script>
<!-- 引入easyui.js -->
<script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery.easyui.min.js"></script>
<!-- 引入easyui本地语言js -->
<script type="text/javascript" src="${pageContext.request.contextPath}/js/easyui-lang-zh_CN.js"></script>
<title>权限管理</title>
<script type="text/javascript">
	$(function(){
		//去掉文本框中的空格
		$('#addbtn').click(function(){
			$('input').each(function(){			
				var val=this.value;
				val=$.trim(val);
				this.value=val;				
			})
		})
		//文本框中的值不能为空
		$('#addbtn').click(function(){
			$('.add').each(function(){
				var txt=$(this).prev('label').text();
				if(this.value==""){
					alert(txt+'不能为空');
				}
			})
		})
		//生成功能表格
		$('#functable').datagrid({    
		    url:'${pageContext.request.contextPath}/findfuncs',    
		    columns:[[ 
				{field : 'checked',	checkbox : true,width : 100,resizable:false,},
		        {field:'fid',title:'功能编号',width:150,hidden:true,resizable:false,},    
		        {field:'fname',title:'功能名称',width:100,resizable:false,},    
		        {field:'fdes',title:'功能描述',width:200,align:'right',resizable:false,},
		        {field:'fparentid',title:'父功能Id',width:100,resizable:false,},
		        {field:'fstate',title:'是否为功能页面',width:100,resizable:false,
		        	formatter: function(value,row,index){
							if (row.fstate=="closed"){
								return '不是';
							} else {
								return '是';
							}
		        		}
		        	},
		        {field:'fpath',title:'页面路径',width:300,resizable:false,align:"center",
		        	formatter: function(value,row,index){
		        		if(row.fstate=="open"){
							if (row.fpath==""){
								return '<span style="color:red">页面路径需写入</span>';
							} else {
								return value;
							}
		        		}
		        		else{
		        			return '<span style="color:blue">目录功能没有页面路径</span>';
		        		}
		        	}
		        },
		    ]],
		    toolbar: [{
				iconCls: 'icon-add',
				text:'增加',
				handler: function(){
	    			//显示增加窗体
		        	$("#addform").form('clear'),
					$('#addwin').window('open');
		        	//鼠标移出判断功能名是否存在，是否符合规范
		        	$("#fname").blur(function(){
		        		//定义 JS 中的正则表达式。直接使用即可。 
		    			//权限名只能为汉字
		    			var reg = /[\u4e00-\u9fa5]/g;		    			
		    			var val = $("#fname").val();		    			
		    			//使用正则进行验证
		    			if(!reg.test(val)){
		    				alert("权限必须为汉字!");
		    			}
					//配置增加表单提交事件
					$('#addform').form({    
					    url:'${pageContext.request.contextPath}/addfunc',   
					    success:function(data){    
					        if(data=="true"){
					        	$.messager.alert('提示','增加成功'); 
					        	$('#functable').datagrid('reload');
					        	$('#addwin').window('close');
					        	$("#addform").form('clear');
					        	window.location.reload();
					        }else{
					        	$.messager.alert('提示','增加失败');
					        }   
					    }    
					});
					
						var fname=$("#fname").val();
						//ajax提交
						$.ajax({
							type:'post',
							url:'${pageContext.request.contextPath}/findfname',
							data:{"fname":fname},
							dataType:'text',
							success:function(result){
								if(result=="1"){
									$.messager.alert('警告','该功能名已存在');
									$("#addform").form('clear');
								}
							}
						})
					})
				}
			},'-',{
				iconCls: 'icon-edit',
				text:'修改',
				handler: function(){
					//获取选中行
					var selRow=$('#functable').datagrid('getSelections');
					if (selRow.length != 1) {
						$.messager.confirm('提示', '请选择一条数据', function(r) {
							if (r) {
								$("#functable").datagrid('unselectAll');
							}
						})
					} else {
						//打开修改窗体
						$('#addwin').window('open');
						var admin = selRow[0];
						//把数据加载进表单中
						 $('#addform').form('load',admin);
						//鼠标移出判断功能名是否存在，是否符合规范
			        	$("#fname").blur(function(){
			        		//定义 JS 中的正则表达式。直接使用即可。 
			    			//权限名只能为汉字
			    			var reg = /[\u4e00-\u9fa5]/g;		    			
			    			var val = $("#fname").val();		    			
			    			//使用正则进行验证
			    			if(!reg.test(val)){
			    				alert("权限名必须为汉字!");
			    			}

						//配置修改表单提交事件
							$('#addform').form({    
							    url:'${pageContext.request.contextPath}/updatefunc',   
							    success:function(data){    
							        if(data=="true"){
							        	$.messager.alert('提示','修改成功'); 
							        	$('#functable').datagrid('reload');
							        	$('#addwin').window('close');
							        	$("#addform").form('clear');
							        	window.location.reload();
							        }else{
							        	$.messager.alert('提示','修改失败');
							        }   
							    }    
							});
			        	})

					}
				}
			},'-',{
				iconCls: 'icon-remove',
				text:'删除',
				handler: function(){
					//定义字符串，把待删除的id拼成字符串，通过ajax传入后台
					var str="";
					var selRow=$('#functable').datagrid('getSelections');
					for(var i=0;i<selRow.length;i++){
						str+=selRow[i].fid+",";
					}
					//ajax提交
					$.ajax({
						type:"post",
						url:"${pageContext.request.contextPath}/delfunc",
						data:{"data":str},
						dataType:"text",
						success:function(result){
							  if (result=="1") {  
		                            $('#functable').datagrid('clearSelections');  
		                            $.messager.alert("提示", "恭喜您，信息删除成功！", "info");  
		                            $('#functable').datagrid('reload');  
		                        } else {  
		                            $.messager.alert("提示", "删除失败，请重新操作！", "info");  
		                            return;  
		                        }  
						}
					})
				}
			}],
			rownumbers:true,
		    striped:true,
		    pagination:true,
		    resizable:false,
		});
		//配置搜索框搜索事件
		$('#searchfunc').searchbox({ 
			searcher:function(value,name){ 
			var funcname=value;
			$('#functable').datagrid('reload',{
				searchname:funcname
			})
			}
		});
		//默认增加/修改表单隐藏
		$('#addwin').window('close');
	})
		//配置增加/修改表单取消事件
	function quitadd(){
		$('#addwin').dialog('close');
		$("#addform").form('clear');
	}
	//配置增加/修改表单提交事件
	function addadmin() {
		$("#addform").form('submit');
	}
</script>
</head>
<body style="background:url(../images/44.jpg);width: 100%; height: 100%">
<!-- 搜索框 -->
<input id="searchfunc" class="easyui-searchbox" style="width:300px" data-options="prompt:'请输入权限名进行查找'"></input>
<!-- 表格 --> 
<table id="functable"></table>  
<!-- 增加/修改窗体 -->
<div id="addwin" class="easyui-window" style="width:600px;height:400px;text-align: center;" title="增加新权限" data-options="shadow:true,modal:true,resizable:false,draggable:false,maximizable:false, minimizable:false,">
		<form id="addform" method="post">   
	    <div style="display: none">      
	        <input class="easyui-textbox" name="fid" style="width:300px;"> 
	    </div>   
	    <div style="margin: 20px">   
	        <label>功能姓名</label>   
	        <input class="add easyui-validatebox"  name="fname" id="fname" style="width:300px"> 
	    </div>
	    <div style="margin: 20px">   
	        <label>功能描述</label>   
	        <input class="add easyui-textbox"  name="fdes" style="width:300px"> 
	    </div>
	    <div style="margin: 20px">   
	        <label>父功能id</label>   
	        <input class="add easyui-textbox"  name="fparentid" style="width:300px"> 
	    </div>
		<div style="margin: 20px">   
	        <label>是否为功能页面</label>   
	        	<select id="funcsel" class="noemply easyui-combobox" name="fstate" style="width:300px;" data-options="editable:false">  
			    <option value="closed">不是</option> 
			    <option value="open">是</option>     
			 	</select>
	    	</div>
	    <div style="margin: 20px">   
	        <label>功能路径</label>   
	        <input class="easyui-textbox"  name="fpath" style="width:300px"> 
	    </div>
	    </form>
	    <!-- 确定/取消按钮 -->
	    <a id="addbtn" href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-add'" onclick="addadmin()" style="margin: 5px">确定</a>
	    <a id="quit1btn" href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-cancel'" onclick="quitadd()" style="margin: 5px">取消</a>       
</div> 

</body>
</html>